The design and analysis of bulk-synchronous parallel algorithms
نویسنده
چکیده
The model of bulk-synchronous parallel (BSP) computation is an emerging paradigm of general-purpose parallel computing. This thesis presents a systematic approach to the design and analysis of BSP algorithms. We introduce an extension of the BSP model, called BSPRAM, which reconciles shared-memory style programming with e cient exploitation of data locality. The BSPRAM model can be optimally simulated by a BSP computer for a broad range of algorithms possessing certain characteristic properties: obliviousness, slackness, granularity. We use BSPRAM to design BSP algorithms for problems from three large, partially overlapping domains: combinatorial computation, dense matrix computation, graph computation. Some of the presented algorithms are adapted from known BSP algorithms (butter y dag computation, cube dag computation, matrix multiplication). Other algorithms are obtained by application of established non-BSP techniques (sorting, randomised list contraction, Gaussian elimination without pivoting and with column pivoting, algebraic path computation), or use original techniques speci c to the BSP model (deterministic list contraction, Gaussian elimination with nested block pivoting, communication-e cient multiplication of Boolean matrices, synchronisation-e cient shortest paths computation). The asymptotic BSP cost of each algorithm is established, along with its BSPRAM characteristics. We conclude by outlining some directions for future research.
منابع مشابه
Application of the Bulk Synchronous Parallel Model in Fractal Image Compression
In this paper we present the results of an investigation into parallel implementations of fractal image compression algorithms. In particular, the research addressed the applicability for this purpose of the new Bulk Synchronous Parallel model, as implemented by the Oxford BSP Toolkit. BSP provides a scalable and predictable framework for developing parallel software, with a reliable and straig...
متن کاملParallel I/O in Bulk-Synchronous Parallel ML
Bulk Synchronous Parallel ML or BSML is a functional dataparallel language for programming bulk synchronous parallel (BSP) algorithms. The execution time can be estimated and dead-locks and indeterminism are avoided. For large scale applications where parallel processing is helpful and where the total amount of data often exceeds the total main memory available, parallel disk I/O becomes a nece...
متن کاملProgramming Research Group Conservative Discrete-event Simulations on Bulk Synchronous Parallel Architectures Conservative Discrete-event Simulations on Bulk Synchronous Parallel Architectures
All the parallel discrete-event simulation algorithms developed so far have been designed to suit a speciic parallel model (e.g., a PRAM model, a MP-RAM model, etc.). This paper presents several versions of conservative parallel discrete-event simulation algorithms developed around a unifying model for general purpose parallel computer design and programming, namely around the Bulk Synchronous ...
متن کاملProbabilistic Synchronous Parallel
Most machine learning and deep neural network algorithms rely on certain iterative algorithms to optimise their utility/cost functions, e.g. Stochastic Gradient Descent (SGD). In distributed learning, the networked nodes have to work collaboratively to update the model parameters, and the way how they proceed is referred to as synchronous parallel design (or barrier control). Synchronous parall...
متن کاملPerformance Analysis of Bulk Synchronous Parallel Algorithms
In the last few ycars, there has been considerable interest in general purpose computational models of parallel computation to permit independent dcvctopment of hardware and software. The BSI.' and related models represent an imponant stcp in this direction. This paper presents a methodology for lhe performance analysis of bulk synchronous parallel algorithms based on paramctcrs which rcncct th...
متن کامل